|
GNU Guile is the preferred extension system for the GNU Project,〔 which features an implementation of the Scheme programming language. Its first version was released in 1993.〔Blandy 1997, p. 102.〕 In addition to large parts of Scheme standards, Guile Scheme includes modularized extensions for many different programming tasks.〔〔 For extending programs, Guile offers "libguile" which allows the language to be embedded in other programs, and integrated closely through the C API; similarly, new types and subroutines defined through the C API can be made available as extensions to Guile itself.〔 Guile stands for the ''GNU Ubiquitous Intelligent Language for Extensions''.〔 It is used in programs like GnuCash and LilyPond.〔 ==Guile Scheme== Guile Scheme is a general-purpose, high-level programming language whose flexibility allows programmers to express concepts in fewer lines of code than would be possible in languages such as C. For example its hygienic macro system allows adding domain specific syntax-elements without modifying Guile itself. Guile implements the Scheme standard R5RS, most of R6RS, several SRFIs, and many extensions of its own. The core idea of Guile Scheme is that "the developer implements critical algorithms and data structures in C or C++ and exports the functions and types for use by interpreted code. The application becomes a library of primitives orchestrated by the interpreter, combining the efficiency of compiled code with the flexibility of interpretation."〔Blandy 1997, p. 87.〕 Thus Guile Scheme (and other languages implemented by Guile) can be extended with new types and subroutines implemented through the C API. The standard distribution offers modules for POSIX system calls, scheduling, a foreign function interface, S-expression based XML processing through SXML, SXPath, and SXSLT, HTTP and other Web APIs, delimited continuations, array programming,〔 and other functionality.〔〔 Guile programs can use facilities from SLIB, the portable Scheme library.〔 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「GNU Guile」の詳細全文を読む スポンサード リンク
|